package com.bicon.botu.account.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.bicon.botu.account.entity.Role;
import com.bicon.botu.core.base.common.entity.BaseResult;

/**
 * @auther 裴志鹏
 * @date 2017/11/30 11:30
 */
public interface IRoleService extends IService<Role> {

    /**
     * 新增角色
     *
     * @param name 角色名
     * @param code 角色code
     * @param type 账户类型：0：前台账户，1：后台账户
     * @return
     */
    boolean add(String name, String code, String type);

    /**
     * 删除角色
     *
     * @param roleId 角色id
     * @param type   账户类型：0：前台账户，1：后台账户
     * @return
     */
    BaseResult delete(String roleId, String type);

    /**
     * 修改角色
     *
     * @param id   角色id
     * @param name 角色名
     * @param code 角色code
     * @param type 账户类型：0：前台账户，1：后台账户
     * @return
     */
    BaseResult update(String id, String name, String code, String type);

    /**
     * 分页查询角色
     *
     * @param pageNo   页码
     * @param pageSize 每页数量
     * @param type     账户类型：0：前台账户，1：后台账户
     * @return
     */
    Page<Role> selectRoleByPageNoAndPageSizeAndType(int pageNo, int pageSize, String type);

    /**
     * 获取所有的角色
     *
     * @return
     */
    BaseResult findAllForController(String type);
}
